
#ifndef _USRDLL
#ifndef MINIDLL
/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 7.00.0555 */
/* at Sat Oct 09 20:41:58 2010
 */
/* Compiler settings for automcomserver.idl:
    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555 
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
/* @@MIDL_FILE_HEADING(  ) */

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__


#ifndef __automcomserver_i_h__
#define __automcomserver_i_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __ICOMServer_FWD_DEFINED__
#define __ICOMServer_FWD_DEFINED__
typedef interface ICOMServer ICOMServer;
#endif 	/* __ICOMServer_FWD_DEFINED__ */


#ifndef __CoCOMServer_FWD_DEFINED__
#define __CoCOMServer_FWD_DEFINED__

#ifdef __cplusplus
typedef class CoCOMServer CoCOMServer;
#else
typedef struct CoCOMServer CoCOMServer;
#endif /* __cplusplus */

#endif 	/* __CoCOMServer_FWD_DEFINED__ */


/* header files for imported files */
#include "wtypes.h"

#ifdef __cplusplus
extern "C"{
#endif 



#ifndef __AutoHotkey2_LIBRARY_DEFINED__
#define __AutoHotkey2_LIBRARY_DEFINED__

/* library AutoHotkey */
/* [version][uuid] */ 


DEFINE_GUID(LIBID_AutoHotkey2,0x9c5f743b, 0xa646, 0x4ec9, 0x8c, 0xe1, 0x7, 0x28, 0xa0, 0x7e, 0x7c, 0x21);

#ifndef __ICOMServer_INTERFACE_DEFINED__
#define __ICOMServer_INTERFACE_DEFINED__

/* interface ICOMServer */
/* [object][oleautomation][dual][uuid] */ 


DEFINE_GUID(IID_ICOMServer,0xa58e17b4, 0xf892, 0x4839, 0x8c, 0x46, 0x9f, 0x3c, 0x6, 0x2f, 0xdf, 0x7d);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A58E17B4-F892-4839-8C46-9F3C062FDF7D")
        ICOMServer : public IDispatch
    {
    public:
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE NewThread(
            /* [optional][in] */ VARIANT script,
            /* [optional][in] */ VARIANT params,
            /* [optional][in] */ VARIANT title,
            /* [retval][out] */ unsigned int* ThreadID) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkPause(
            /* [in] */ VARIANT aThreadID,
            /* [optional][in] */ VARIANT aChangeTo,
            /* [retval][out] */ int* paused) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkReady(
            /* [in] */ VARIANT aThreadID,
            /* [retval][out] */ int* ready) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkFindLabel(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT aLabelName,
            /* [retval][out] */ UINT_PTR* pLabel) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkgetvar(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT name,
            /* [optional][in] */ VARIANT getVar,
            /* [retval][out] */ VARIANT* returnVal) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkassign(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT name,
            /* [optional][in] */ VARIANT value,
            /* [retval][out] */ int* success) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkExecuteLine(
            /* [in] */ VARIANT aThreadID,
            /* [optional][in] */ VARIANT line,
            /* [optional][in] */ VARIANT aMode,
            /* [optional][in] */ VARIANT wait,
            /* [retval][out] */ UINT_PTR* pLine) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkLabel(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT aLabelName,
            /* [optional][in] */ VARIANT nowait,
            /* [retval][out] */ int* success) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkFindFunc(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT FuncName,
            /* [retval][out] */ UINT_PTR* pFunc) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkFunction(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT FuncName,
            /* [optional][in] */ VARIANT param1,
            /* [optional][in] */ VARIANT param2,
            /* [optional][in] */ VARIANT param3,
            /* [optional][in] */ VARIANT param4,
            /* [optional][in] */ VARIANT param5,
            /* [optional][in] */ VARIANT param6,
            /* [optional][in] */ VARIANT param7,
            /* [optional][in] */ VARIANT param8,
            /* [optional][in] */ VARIANT param9,
            /* [optional][in] */ VARIANT param10,
            /* [retval][out] */ VARIANT* returnVal) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkPostFunction(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT FuncName,
            /* [optional][in] */ VARIANT param1,
            /* [optional][in] */ VARIANT param2,
            /* [optional][in] */ VARIANT param3,
            /* [optional][in] */ VARIANT param4,
            /* [optional][in] */ VARIANT param5,
            /* [optional][in] */ VARIANT param6,
            /* [optional][in] */ VARIANT param7,
            /* [optional][in] */ VARIANT param8,
            /* [optional][in] */ VARIANT param9,
            /* [optional][in] */ VARIANT param10,
            /* [retval][out] */ VARIANT* returnVal) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE addScript(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT script,
            /* [optional][in] */ VARIANT waitexecute,
            /* [retval][out] */ UINT_PTR* success) = 0;

        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ahkExec(
            /* [in] */ VARIANT aThreadID,
            /* [in] */ VARIANT script,
            /* [retval][out] */ BOOL* success) = 0;

    };


#else 	/* C style interface */

typedef struct ICOMServerVtbl
{
    BEGIN_INTERFACE

        HRESULT(STDMETHODCALLTYPE* QueryInterface)(
            ICOMServer* This,
            /* [in] */ REFIID riid,
            /* [annotation][iid_is][out] */
            _COM_Outptr_  void** ppvObject);

    ULONG(STDMETHODCALLTYPE* AddRef)(
        ICOMServer* This);

    ULONG(STDMETHODCALLTYPE* Release)(
        ICOMServer* This);

    HRESULT(STDMETHODCALLTYPE* GetTypeInfoCount)(
        ICOMServer* This,
        /* [out] */ UINT* pctinfo);

    HRESULT(STDMETHODCALLTYPE* GetTypeInfo)(
        ICOMServer* This,
        /* [in] */ UINT iTInfo,
        /* [in] */ LCID lcid,
        /* [out] */ ITypeInfo** ppTInfo);

    HRESULT(STDMETHODCALLTYPE* GetIDsOfNames)(
        ICOMServer* This,
        /* [in] */ REFIID riid,
        /* [size_is][in] */ LPOLESTR* rgszNames,
        /* [range][in] */ UINT cNames,
        /* [in] */ LCID lcid,
        /* [size_is][out] */ DISPID* rgDispId);

    /* [local] */ HRESULT(STDMETHODCALLTYPE* Invoke)(
        ICOMServer* This,
        /* [annotation][in] */
        _In_  DISPID dispIdMember,
        /* [annotation][in] */
        _In_  REFIID riid,
        /* [annotation][in] */
        _In_  LCID lcid,
        /* [annotation][in] */
        _In_  WORD wFlags,
        /* [annotation][out][in] */
        _In_  DISPPARAMS* pDispParams,
        /* [annotation][out] */
        _Out_opt_  VARIANT* pVarResult,
        /* [annotation][out] */
        _Out_opt_  EXCEPINFO* pExcepInfo,
        /* [annotation][out] */
        _Out_opt_  UINT* puArgErr);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* NewThread)(
        ICOMServer* This,
        /* [optional][in] */ VARIANT script,
        /* [optional][in] */ VARIANT params,
        /* [optional][in] */ VARIANT title,
        /* [retval][out] */ unsigned int* ThreadID);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkPause)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [optional][in] */ VARIANT aChangeTo,
        /* [retval][out] */ int* paused);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkReady)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [retval][out] */ int* ready);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkFindLabel)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT aLabelName,
        /* [retval][out] */ UINT_PTR* pLabel);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkgetvar)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT name,
        /* [optional][in] */ VARIANT getVar,
        /* [retval][out] */ VARIANT* returnVal);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkassign)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT name,
        /* [optional][in] */ VARIANT value,
        /* [retval][out] */ int* success);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkExecuteLine)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [optional][in] */ VARIANT line,
        /* [optional][in] */ VARIANT aMode,
        /* [optional][in] */ VARIANT wait,
        /* [retval][out] */ UINT_PTR* pLine);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkLabel)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT aLabelName,
        /* [optional][in] */ VARIANT nowait,
        /* [retval][out] */ int* success);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkFindFunc)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT FuncName,
        /* [retval][out] */ UINT_PTR* pFunc);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkFunction)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT FuncName,
        /* [optional][in] */ VARIANT param1,
        /* [optional][in] */ VARIANT param2,
        /* [optional][in] */ VARIANT param3,
        /* [optional][in] */ VARIANT param4,
        /* [optional][in] */ VARIANT param5,
        /* [optional][in] */ VARIANT param6,
        /* [optional][in] */ VARIANT param7,
        /* [optional][in] */ VARIANT param8,
        /* [optional][in] */ VARIANT param9,
        /* [optional][in] */ VARIANT param10,
        /* [retval][out] */ VARIANT* returnVal);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkPostFunction)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT FuncName,
        /* [optional][in] */ VARIANT param1,
        /* [optional][in] */ VARIANT param2,
        /* [optional][in] */ VARIANT param3,
        /* [optional][in] */ VARIANT param4,
        /* [optional][in] */ VARIANT param5,
        /* [optional][in] */ VARIANT param6,
        /* [optional][in] */ VARIANT param7,
        /* [optional][in] */ VARIANT param8,
        /* [optional][in] */ VARIANT param9,
        /* [optional][in] */ VARIANT param10,
        /* [retval][out] */ VARIANT* returnVal);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* addScript)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT script,
        /* [optional][in] */ VARIANT waitexecute,
        /* [retval][out] */ UINT_PTR* success);

    /* [id] */ HRESULT(STDMETHODCALLTYPE* ahkExec)(
        ICOMServer* This,
        /* [in] */ VARIANT aThreadID,
        /* [in] */ VARIANT script,
        /* [retval][out] */ BOOL* success);

    END_INTERFACE
    } ICOMServerVtbl;

interface ICOMServer
{
    CONST_VTBL struct ICOMServerVtbl* lpVtbl;
};



#ifdef COBJMACROS


#define ICOMServer_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define ICOMServer_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define ICOMServer_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define ICOMServer_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define ICOMServer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define ICOMServer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define ICOMServer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define ICOMServer_NewThread(This,script,params,title,ThreadID)	\
    ( (This)->lpVtbl -> NewThread(This,script,params,title,ThreadID) ) 

#define ICOMServer_ahkPause(This,aThreadID,aChangeTo,paused)	\
    ( (This)->lpVtbl -> ahkPause(This,aThreadID,aChangeTo,paused) ) 

#define ICOMServer_ahkReady(This,aThreadID,ready)	\
    ( (This)->lpVtbl -> ahkReady(This,aThreadID,ready) ) 

#define ICOMServer_ahkFindLabel(This,aThreadID,aLabelName,pLabel)	\
    ( (This)->lpVtbl -> ahkFindLabel(This,aThreadID,aLabelName,pLabel) ) 

#define ICOMServer_ahkgetvar(This,aThreadID,name,getVar,returnVal)	\
    ( (This)->lpVtbl -> ahkgetvar(This,aThreadID,name,getVar,returnVal) ) 

#define ICOMServer_ahkassign(This,aThreadID,name,value,success)	\
    ( (This)->lpVtbl -> ahkassign(This,aThreadID,name,value,success) ) 

#define ICOMServer_ahkExecuteLine(This,aThreadID,line,aMode,wait,pLine)	\
    ( (This)->lpVtbl -> ahkExecuteLine(This,aThreadID,line,aMode,wait,pLine) ) 

#define ICOMServer_ahkLabel(This,aThreadID,aLabelName,nowait,success)	\
    ( (This)->lpVtbl -> ahkLabel(This,aThreadID,aLabelName,nowait,success) ) 

#define ICOMServer_ahkFindFunc(This,aThreadID,FuncName,pFunc)	\
    ( (This)->lpVtbl -> ahkFindFunc(This,aThreadID,FuncName,pFunc) ) 

#define ICOMServer_ahkFunction(This,aThreadID,FuncName,param1,param2,param3,param4,param5,param6,param7,param8,param9,param10,returnVal)	\
    ( (This)->lpVtbl -> ahkFunction(This,aThreadID,FuncName,param1,param2,param3,param4,param5,param6,param7,param8,param9,param10,returnVal) ) 

#define ICOMServer_ahkPostFunction(This,aThreadID,FuncName,param1,param2,param3,param4,param5,param6,param7,param8,param9,param10,returnVal)	\
    ( (This)->lpVtbl -> ahkPostFunction(This,aThreadID,FuncName,param1,param2,param3,param4,param5,param6,param7,param8,param9,param10,returnVal) ) 

#define ICOMServer_addScript(This,aThreadID,script,waitexecute,success)	\
    ( (This)->lpVtbl -> addScript(This,aThreadID,script,waitexecute,success) ) 

#define ICOMServer_ahkExec(This,aThreadID,script,success)	\
    ( (This)->lpVtbl -> ahkExec(This,aThreadID,script,success) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ICOMServer_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_CCOMServer,0xfeeec4ba, 0x4af, 0x45f0, 0xb3, 0x85, 0x72, 0x90, 0xc6, 0x5c, 0xfb, 0x9b);

#ifdef _WIN64
DEFINE_GUID(CLSID_CCOMServerOptioal,0xf1d0de03, 0x30fd, 0x4326, 0xb3, 0x3f, 0x98, 0x9b, 0xbf, 0xaa, 0x5f, 0xfa);
#else
#ifdef _UNICODE
DEFINE_GUID(CLSID_CCOMServerOptional,0xec81ebba, 0x6cee, 0x4363, 0xab, 0x77, 0xc0, 0xe5, 0x70, 0x46, 0xaa, 0x89);
#else
DEFINE_GUID(CLSID_CCOMServerOptional,0xde91ae03, 0xec49, 0x4a4f, 0x85, 0xdc, 0x10, 0xa, 0x74, 0x40, 0x61, 0x3);
#endif
#endif

#ifdef __cplusplus

class DECLSPEC_UUID("FEEEC4BA-04AF-45F0-B385-7290C65CFB9B")
CCOMServer;

#ifdef _WIN64
class DECLSPEC_UUID("F1D0DE03-30FD-4326-B33F-989BBFAA5FFA")
#else
#ifdef _UNICODE
class DECLSPEC_UUID("EC81EBBA-6CEE-4363-AB77-C0E57046AA89")
#else
class DECLSPEC_UUID("DE91AE03-EC49-4A4F-85DC-100A74406103")
#endif
#endif
CCOMServerOptional;
#endif
#endif /* __AutoHotkey2_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


#endif
#endif